home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EuroCD 3
/
EuroCD 3.iso
/
Programming
/
Amos
/
Lame_Sahdowed_Tunel.Amos
/
Lame_Sahdowed_Tunel.amosSourceCode
Wrap
AMOS Source Code
|
1998-06-24
|
2KB
|
70 lines
Rem "This is some shitty, bloody tunel... without textures and anything"
Rem "nice... this is the first poor version of it... next will be full"
Rem "textured and maybe with phong shadowing or only gouraud pulse, maybe"
Rem "soon available on AMINET, so look for it!"
Rem
Rem " this program wa written by raptor / sector5"
Rem " email: raptor2@free.polbox.pl"
Rem " www: http://www.free.polbox.pl/s/sector5"
'Open screens and etc...
Screen Open 0,320,256,16,Lowres : Cls 0 : Flash Off : Hide : Colour 1,$FFF
Double Buffer : Autoback 0 : Degree
For K=1 To 15 : Colour K,K*273 : Next
Dim WSP(150),WSP1(150),WSP2(150),WSP3(150),WSP4(150),WSP5(150),WSP6(150),WSP7(150)
Dim XS(150),X(150),Y(150)
'Calculate zoom parametr...
For NUM=2 To 70
Add X,5,1 To 340
XS(NUM)=X
Next
AD=0 : AD1=90 : AD2=180 : AD3=270
Do
Add ALFA,5,0 To 359
'Recalculate zoom parametr...
For NUM=1 To 70
XS(NUM)=XS(NUM)+5
If XS(NUM)>340 Then XS(NUM)=0 : X(NUM)=160+50*Sin(ALFA) : Y(NUM)=132+30*Cos(ALFA)
Next
AD=AD+1 : AD1=AD1+1 : AD2=AD2+1 : AD3=AD3+1
'Calculate tunel...
For NUM=1 To 70 Step 1
If T=0 Then X(NUM)=160+50*Sin(ALFA) : Y(NUM)=132+30*Cos(ALFA)
X=X(NUM)+(XS(NUM))*Sin(ALFA+AD+Rnd(3)) : WSP(NUM)=X
Y=Y(NUM)+(XS(NUM))*Cos(ALFA+AD+Rnd(3)) : WSP1(NUM)=Y
X1=X(NUM)+(XS(NUM))*Sin(ALFA+AD1+Rnd(3)) : WSP2(NUM)=X1
Y1=Y(NUM)+(XS(NUM))*Cos(ALFA+AD1+Rnd(3)) : WSP3(NUM)=Y1
X2=X(NUM)+(XS(NUM))*Sin(ALFA+AD2+Rnd(3)) : WSP4(NUM)=X2
Y2=Y(NUM)+(XS(NUM))*Cos(ALFA+AD2+Rnd(3)) : WSP5(NUM)=Y2
X3=X(NUM)+(XS(NUM))*Sin(ALFA+AD3+Rnd(3)) : WSP6(NUM)=X3
Y3=Y(NUM)+(XS(NUM))*Cos(ALFA+AD3+Rnd(3)) : WSP7(NUM)=Y3
Next
T=1
'Display tunel...
For N=1 To 70 Step 1
If XS(N)>-20 Then K=1
If XS(N)>20 Then K=2
If XS(N)>40 Then K=3
If XS(N)>60 Then K=4
If XS(N)>80 Then K=5
If XS(N)>100 Then K=6
If XS(N)>120 Then K=7
If XS(N)>140 Then K=8
If XS(N)>160 Then K=9
If XS(N)>180 Then K=10
If XS(N)>200 Then K=11
If XS(N)>220 Then K=12
If XS(N)>240 Then K=13
If XS(N)>260 Then K=14
If XS(N)>280 Then K=15
Ink K,0 : Polyline WSP(N),WSP1(N) To WSP2(N),WSP3(N) To WSP4(N),WSP5(N) To WSP6(N),WSP7(N) To WSP(N),WSP1(N)
Next
Screen Swap : Wait 1 : Cls 0
Loop
'everything is simply... isn't it?